package com.life.wd.utils;

/**
 * ThreadLocal工具类，用于存储和获取当前线程的用户信息
 */
public class ThreadLocalUtil {
    // 使用ThreadLocal存储用户信息
    private static final ThreadLocal<Object> userThreadLocal = new ThreadLocal<>();

    /**
     * 设置用户信息到当前线程
     */
    public static void set(Object object) {
        userThreadLocal.set(object);
    }

    /**
     * 获取当前线程的用户信息
     */
    public static <T> T get() {
        return (T) userThreadLocal.get();
    }

    /**
     * 清除当前线程的用户信息
     * 注意：使用完ThreadLocal后必须调用remove清除数据
     */
    public static void remove() {
        userThreadLocal.remove();
    }
}